package com.example.harmonyosproject.server.controller;
import com.example.harmonyosproject.pojo.Favorite;
import com.example.harmonyosproject.pojo.News;
import com.example.harmonyosproject.pojo.Result;
import com.example.harmonyosproject.server.service.NewsService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Slf4j
@RestController
@RequestMapping("/news")
public class NewsController {
    @Autowired
    NewsService newsService;
//    新增动态
//    {
//        "userId":"6",
//            "friendId":"8",
//            "text":"",
//            "image":"image"
//    }
    @PostMapping("/add")
    public Result addNews(@RequestBody News news){
        log.info(news.toString());
        log.info("ok");
        newsService.addNews(news);
        return Result.success();
    }
//    获取所有动态（朋友圈）
//    路径传参,/id
//    返回参数：
//{
//    "code": 1,
//        "msg": "success",
//        "data": [
//    {
//        "id": 5,
//            "userId": 8,
//            "text": "我是王五",
//            "image": null,
//            "likes": 0,
//            "createTime": "2024-07-09T11:09:01"
//    },
//    {
//        "id": 4,
//            "userId": 7,
//            "text": "张三，你在干什么【怒】",
//            "image": null,
//            "likes": 0,
//            "createTime": "2024-07-09T11:08:39"
//    },
//    {
//        "id": 3,
//            "userId": 6,
//            "text": "你好，你好",
//            "image": null,
//            "likes": 0,
//            "createTime": "2024-07-09T11:07:57"
//    },
//    {
//        "id": 2,
//            "userId": 6,
//            "text": "hello world",
//            "image": "hello.png",
//            "likes": 0,
//            "createTime": "2024-07-09T11:07:33"
//    },
//    {
//        "id": 1,
//            "userId": 6,
//            "text": "兄弟们，这个是我的第一个动态",
//            "image": null,
//            "likes": 0,
//            "createTime": "2024-07-09T11:06:58"
//    }
//    ]
//}
    @GetMapping("/getAll/{id}")
    public Result getAll(@PathVariable Integer id){
        List<News> newsList= newsService.getAll(id);

        return Result.success(newsList);
    }
//    获取个人动态（朋友圈）
//    路径传参,/id
//    返回参数：
//    {
//        "code": 1,
//            "msg": "success",
//            "data": [
//        {
//            "id": 3,
//                "userId": 6,
//                "text": "你好，你好",
//                "image": null,
//                "likes": 0,
//                "createTime": "2024-07-09T11:07:57"
//        },
//        {
//            "id": 2,
//                "userId": 6,
//                "text": "hello world",
//                "image": "hello.png",
//                "likes": 0,
//                "createTime": "2024-07-09T11:07:33"
//        },
//        {
//            "id": 1,
//                "userId": 6,
//                "text": "兄弟们，这个是我的第一个动态",
//                "image": null,
//                "likes": 0,
//                "createTime": "2024-07-09T11:06:58"
//        }
//    ]
//    }
    @GetMapping("/getSelf/{id}")
    public Result getSelf(@PathVariable Integer id){
        List<News> newsList= newsService.getSelf(id);
        return Result.success(newsList);
    }

//    添加收藏
//    {
//        "userId":6,
//            "newsId":5
//    }
    @PostMapping("/addFavorite")
    public Result addFavorite(@RequestBody Favorite favorite){
        newsService.addFavorite(favorite);
        return Result.success();
    }
//    查看收藏
//    {
//        "code": 1,
//            "msg": "success",
//            "data": [
//        {
//            "id": 5,
//                "userId": 8,
//                "headImage": "https://shoppingsystem2.oss-cn-beijing.aliyuncs.com/HarmonyOSProject/%E5%BE%AE%E4%BF%A1.png",
//                "text": "我是王五",
//                "image": null,
//                "likes": 0,
//                "createTime": "2024-07-09T11:09:01",
//                "favorite": false
//        },
//        {
//            "id": 4,
//                "userId": 7,
//                "headImage": "https://shoppingsystem2.oss-cn-beijing.aliyuncs.com/HarmonyOSProject/%E5%BE%AE%E4%BF%A1.png",
//                "text": "张三，你在干什么【怒】",
//                "image": null,
//                "likes": 0,
//                "createTime": "2024-07-09T11:08:39",
//                "favorite": false
//        },
//        {
//            "id": 1,
//                "userId": 6,
//                "headImage": "https://shoppingsystem2.oss-cn-beijing.aliyuncs.com/HarmonyOSProject/%E5%BE%AE%E4%BF%A1.png",
//                "text": "兄弟们，这个是我的第一个动态",
//                "image": null,
//                "likes": 0,
//                "createTime": "2024-07-09T11:06:58",
//                "favorite": false
//        }
//    ]
//    }
    @GetMapping("/getFavorite/{userId}")
    public Result getFavorite(@PathVariable Integer userId){
        List<News> newsList=newsService.getFavorite(userId);
        return Result.success(newsList);
    }
//    取消收藏
//    {
//        "userId":6,
//            "newsId":2
//    }
    @PostMapping ("/deleteFavorite")
    public Result deleteFavorite(@RequestBody Favorite favorite){
        newsService.deleteFavorite(favorite);
        return Result.success();
    }
    @PutMapping("/like/{id}")
    public Result addLike(@PathVariable Integer id){
        newsService.addLike(id);
        return Result.success();
    }

}
